package com.gxar.quick.ar.server.base.model.user.vo.response;

import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author linsy
 * @version 1.0
 * @created 2023/11/6 09:49
 */
@Data
@ApiModel("用户权益响应模型")
public class UserRightsResponse {

    @ApiModelProperty("总坑位")
    @JSONField(name = "total_slot_number")
    @JsonProperty("total_slot_number")
    private Integer totalSlotNumber;
    @ApiModelProperty("已使用坑位")
    @JSONField(name = "use_slot_number")
    @JsonProperty("use_slot_number")
    private Integer useSlotNumber;
    @ApiModelProperty("剩余可用坑位")
    @JSONField(name = "available_slot_number")
    @JsonProperty("available_slot_number")
    private Integer availableSlotNumber;

    @ApiModelProperty("总浏览次数")
    @JSONField(name = "total_impressions_number")
    @JsonProperty("total_impressions_number")
    private Integer totalImpressionsNumber;
    @ApiModelProperty("已使用浏览次数")
    @JSONField(name = "use_impressions_number")
    @JsonProperty("use_impressions_number")
    private Integer useImpressionsNumber;
    @ApiModelProperty("剩余可用浏览次数")
    @JSONField(name = "available_impressions_number")
    @JsonProperty("available_impressions_number")
    private Integer availableImpressionsNumber;

    @ApiModelProperty("总识别图大小")
    @JSONField(name = "total_identify_number")
    @JsonProperty("total_identify_number")
    private Integer totalIdentifyNumber;
    @ApiModelProperty("已使用识别图大小")
    @JSONField(name = "use_identify_number")
    @JsonProperty("use_identify_number")
    private Integer useIdentifyNumber;
    @ApiModelProperty("可用识别图大小")
    @JSONField(name = "available_identify_number")
    @JsonProperty("available_identify_number")
    private Integer availableIdentifyNumber;

    @ApiModelProperty("总视频大小")
    @JSONField(name = "total_video_number")
    @JsonProperty("total_video_number")
    private Integer totalVideoNumber;
    @ApiModelProperty("已使用视频大小")
    @JSONField(name = "use_video_number")
    @JsonProperty("use_video_number")
    private Integer useVideoNumber;
    @ApiModelProperty("可用视频大小")
    @JSONField(name = "available_video_number")
    @JsonProperty("available_video_number")
    private Integer availableVideoNumber;

    @ApiModelProperty("总3D模型大小")
    @JSONField(name = "total_33dModel_number")
    @JsonProperty("total_u3dModel_number")
    private Integer totalU3dModelNumber;
    @ApiModelProperty("已使用3D模型大小")
    @JSONField(name = "use_u3dModel_number")
    @JsonProperty("use_u3dModel_number")
    private Integer useU3dModelNumber;
    @ApiModelProperty("可用3D模型大小")
    @JSONField(name = "available_u3dModel_number")
    @JsonProperty("available_u3dModel_number")
    private Integer availableU3dModelNumber;

    @ApiModelProperty("是否水印：1-是，0-否")
    @JSONField(name = "watermark")
    @JsonProperty("watermark")
    private Integer watermark;

    {
        this.totalSlotNumber = 0;
        this.useSlotNumber = 0;
        this.availableSlotNumber = 0;

        this.totalImpressionsNumber = 0;
        this.useImpressionsNumber = 0;
        this.availableImpressionsNumber = 0;

        this.totalIdentifyNumber = 0;
        this.useIdentifyNumber = 0;
        this.availableIdentifyNumber = 0;

        this.totalVideoNumber = 0;
        this.useVideoNumber = 0;
        this.availableVideoNumber = 0;

        this.totalU3dModelNumber = 0;
        this.useU3dModelNumber = 0;
        this.availableU3dModelNumber = 0;

        this.watermark = 1;
    }

}
